package com.wyx.anno;

import com.wyx.validation.StateValidation;
import jakarta.validation.Constraint;
import jakarta.validation.Payload;

import java.lang.annotation.*;

@Documented // 表示该注解应该被包含在javadoc中
@Constraint(validatedBy = {StateValidation.class}) // 表示该注解由哪个类来验证
@Target({ElementType.FIELD}) // 表示该注解可以加在哪些地方
@Retention(RetentionPolicy.RUNTIME) // 表示该注解在运行时保留
public @interface State {
    String message() default "state参数只能是已发布或草稿"; // 提示信息

    Class<?>[] groups() default {}; // 分组

    Class<? extends Payload>[] payload() default {}; // 负载
}
